﻿Imports System.IO

Public Class FormModificarUsuario

    Private Sub cb_users_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cb_users.SelectedIndexChanged

    End Sub

    Private Sub FormModificarUsuario_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Try
            cb_users.Items.Clear()
            Dim a As New StreamReader("C:\eleemeTPV\users\FichUsuarios.txt")
            Dim nombre As String
            Dim cod As String
            Do
                nombre = a.ReadLine
                cod = a.ReadLine
                cb_users.Items.Add(nombre)
            Loop Until nombre Is Nothing Or nombre = ""
        Catch ex As Exception
        End Try
    End Sub

    Private Sub bt_aceptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_aceptar.Click

        'El botón aceptar modifica el usuario en caso de que se cumplan las condiciones del IF, que son:
        'Que ningún campo esté vacío y que la antigua contraseña y la repetición sean iguales.
        'Posteriormente se guardan los datos en un fichero temporal y 
        'se sobreescribe sobre el fichero de contraseñas.
        'En caso de que no se cumpla la condición, se vacían los campos.

        Try
            If tb_AntContraseña.Text = tb_RepContraseña.Text And tb_RepContraseña.Text <> "" And tb_AntContraseña.Text <> "" And tb_NuevaContraseña.Text <> "" Then
                Dim temporal As New StreamWriter("C:\eleemeTPV\users\tempPassword.txt")
                Dim password As New StreamReader("C:\eleemeTPV\users\FichPassword.txt")
                Dim nombre As String
                Dim passw As String

                Do
                    nombre = password.ReadLine()
                    passw = password.ReadLine()

                    nombre = cb_users.Text
                    passw = tb_NuevaContraseña.Text

                    temporal.WriteLine(nombre)
                    temporal.WriteLine(passw)
                Loop Until nombre Is Nothing
                temporal.Close()
                password.Close()

                Dim temporales As New StreamReader("C:\eleemeTPV\users\tempPassword.txt")
                Dim passwords As New StreamWriter("C:\eleemeTPV\users\FichPassword.txt")
                Do
                    nombre = temporales.ReadLine()
                    passw = temporales.ReadLine()
                    passwords.WriteLine(nombre)
                    passwords.WriteLine(passw)
                Loop Until nombre Is Nothing
                temporales.Close()
                passwords.Close()
                Me.Hide()
                FormMenuUsuarios.Show()

            Else

                MsgBox("Error, revise sus datos. Falta algún dato o no conciden las contraseñas.")
                tb_AntContraseña.Text = ""
                tb_NuevaContraseña.Text = ""
                tb_RepContraseña.Text = ""

            End If
        Catch ex As Exception

        End Try
    End Sub

    Private Sub bt_Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_Cancel.Click
        Try
            Me.Hide()
            FormMenuUsuarios.Show()
        Catch ex As Exception
        End Try
    End Sub
End Class